package com.dd.cloud.user.req.pres;

import com.dd.cloud.common.annotate.validation.Name;
import com.dd.cloud.common.annotate.validation.Phone;
import lombok.Data;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;
import java.math.BigDecimal;

/**
 * @author zk
 */
@Data
public class PresCreateKmReq extends PresCreateReq {
    /**
     * 收货地址	必须	格式必须为：省(直辖市)，市，区(县)，详细地址。例如：广东省,广州市,天河区,越秀中183404房
     */
    @Size(max = 100, message = "收货地址过长")
    private String addrStr;

    /**
     * 收货人姓名	必须
     */
    @Name(begin = "收货人姓名", required = false)
    private String consignee;

    /**
     * 收货人电话	必须
     */
    @Phone(message = "收货人电话格式不正确", required = false)
    private String conTel;

    /**
     * 支付方式	必须	1在线支付,2货到付款
     */
    @NotNull(message = "支付方式不能为空")
    private Integer payStatus;

    /**
     * 是否煎煮	必须	0 否，1 是（膏方统一非煎煮，传0）
     */
    @NotNull(message = "是否煎煮不能为空")
    private Integer isSuffering;

    /**
     * 剂数	必须	西药amount=1,膏方传1(一个处方最大剂数为99)
     */
    @NotNull(message = "剂数不能为空")
    private Integer amount;

    /**
     * 处方类型	必须	0 中药，1西药，2 膏肓，3 丸剂，5 散剂
     */
    @NotNull(message = "处方类型不能为空")
    private Integer type;

    /**
     * 丸剂类型	非必须，丸剂必填	1.浓缩丸，2.水泛丸，3.水蜜丸，4.素丸，5.蜜丸
     */
    private Integer wjType;

    /**
     * 服用方法	必须	0 内服，1 外用
     */
    @NotNull(message = "服用方法不能为空")
    private Integer isWithin;

    /**
     * 处方特殊说明	必须	诊断信息
     */
    @NotBlank(message = "处方特殊说明不能为空")
    private String specialInstru;

    /**
     * 用药方法	非必须	水煎服、冲服、浓煎、水煎外洗等这些用药的方法
     */
    private String medicationMethods;

    /**
     * 用药指导 非必须 每日1剂每日1次
     */
    private String medicationInstruction;

    /**
     * 是否需要发票	必须	0 不需要 1 需要
     */
    @NotNull(message = "是否需要发票不能为空")
    private Integer isInvoice;

    /**
     * 发票抬头	非必须	比如：康美股份有限公司
     */
    private String lookUp;

    /**
     * 发票金额	非必须	此处只需要传金额，不需要传单位；单位：元
     */
    private BigDecimal invomoney;

    /**
     * 膏方描述文件	非必须	用于膏方
     */
    private String pasteDescFile;

    /**
     * 备注	非必须
     */
    private String prescriptRemark;

    /**
     * 双签名照片	非必须	将文件读成字节流再转Base64字符串，多张图片用英文逗号分隔(eg:base64字符串,base64字符串)
     */
    private String images;
}
